/* 这个文件来放置主界面中的样式 */

.client-container {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.main {
    width: 1000px;
    height: 740px;
    background-color: rgb(238, 238, 238);
    border-radius: 5px;

    display: flex;

    z-index: 2;
}

.main .left {
    width: 280px;
    height: 100%;
    background-color: rgb(46, 50, 56);

    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.main .right {
    width: 720px;
    height: 100%;

    padding: 0 20px;
}

.cover {
    width: 100%;
    height: 100%;

    background-image: url(../img/sheep.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;

    /* 为了让 .cover 和 .main 能够重叠, 给 .cover 加上个定位属性 */
    position: absolute;
    top: 0;
    left: 0;

    /* 设置了下 z 轴坐标 */
    z-index: 1;

    /* 使用 css 滤镜效果, 让背景图变的朦胧起来 */
    filter: blur(20px);
}

.main .left .user {
    height: 80px;
    font-size: 20px;
    line-height: 80px;
    color: white;
    padding: 0 20px;
}

.main .left .search {
    height: 40px;
    padding: 0 20px;

    /* 使用弹性布局, 让里面的元素, 水平方向排列 */
    display: flex;
    justify-content: center;
    align-items: center;
}


.main .left .search input {
    height: 34px;
    width: 200px;
    line-height: 34px;
    font-size: 14px;
    color: white;
    background-color: rgb(38, 41, 46);

    /* 去除边框和轮廓线 */
    border: none;
    outline: none;
    /* 输入框里的文字和左侧边界有个边距 */
    padding-left: 10px;

    border-radius: 5px;
}

.main .left .search button {
    height: 34px;
    width: 34px;
    border: none;
    outline: none;

    background-color: rgb(38, 41, 46);

    border-radius: 5px;
    background-image: url(../img/搜索.png);
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: center center;
}

.main .left .search button:active {
    background-color: grey;
}

.main .left .tab {
    height: 50px;
    display: flex;
    align-items: center;
}

.main .left .tab .tab-session {
    height: 100%;
    width: 50%;

    background-image: url(../img/对话.png);
    background-repeat: no-repeat;
    background-size: 30px 30px;
    background-position: center center;
}


.main .left .tab .tab-friend {
    height: 100%;
    width: 50%;

    background-image: url(../img/用户2.png);
    background-repeat: no-repeat;
    background-size: 30px 30px;
    background-position: center center;
}

.main .left .list {
    height: 570px;

    /* 如果里面的内容太多了, 就自动提供一个滚动条 */
    overflow: auto;
}

.main .left .list li {
    height: 60px;
    padding: 10px 20px;
    color: white;
    border-top: 1px solid black;
}

.main .left .list .selected {
    background-color: rgb(46, 54, 65);
}

/* 这个样式是给会话列表使用的 */
.main .left .list li h3,
.main .left .list li p {
    height: 20px;
    font-size: 14px;
    line-height: 20px;
}

/* 这个样式是给好友列表使用的 */
.main .left .list li h4 {
    height: 40px;
    line-height: 40px;
    font-size: 20px;
    margin-bottom: 2px;
}

/* 应用了这个 css 类的元素就会被自动隐藏 */
.hide {
    display: none;
}

/* 隐藏滚动条 */
::-webkit-scrollbar {
    display: none;
}

.main .right .title {
    height: 50px;
    line-height: 50px;
    font-size: 20px;
    text-align: center;
    border-bottom: 1px solid #ccc;
}

.main .right .message-show {
    height: 550px;

    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;

    /* 内容太多, 自动进行滚动 */
    overflow: auto;
}

.main .right .message-show .message {
    margin-top: 10px;
    /* 宽度默认 100%, 高度的话不显式设定, 后续一条消息的内容有多有少 */
    display: flex;
}

/* 这个样式让子元素靠左 */
.main .right .message-show .message-left {
    justify-content: flex-start;
}

/* 这个样式让子元素靠右 */
.main .right .message-show .message-right {
    justify-content: flex-end;
}

.main .right .message-show .message .box {
    /* box 凸显出左右这样的效果, 宽度不能是 100% */
    /* width: 500px; */
    width: auto;
}

.main .right .message-show .message .box h4 {
    /* 去掉加粗效果 */
    font-weight: normal;
    height: 20px;
    line-height: 20px;
    font-size: 16px;
}

.main .right .message-show .message .box p {
    /* padding: 20px; */
    padding: 10px 20px;
    border-radius: 10px;
}

/* 给左侧右侧消息设置背景色 */
.main .right .message-show .message-left .box p {
    background-color: #fff;
}

.main .right .message-show .message-right .box p {
    background-color: rgb(123, 181, 107);
}

/*消息编辑框*/
/*.main .right .message-input {*/
/*    !* 先把 textarea 转成块级元素, 方便设置尺寸啥的 *!*/
/*    display: block;*/
/*    width: 100%;*/
/*    height: 100px;*/
/*    border: none;*/
/*    outline: none;*/

/*    margin-top: 2px;*/
/*    background-color: rgb(238, 238, 238);*/
/*    padding: 10px;*/
/*    resize: none;*/
/*}*/


/*新消息编辑框*/
.main .right .message-input {
    /* 保持块级元素特性 */
    display: block;
    width: 100%;
    min-height: 100px; /* 改为最小高度，方便内容增多时自动扩展 */
    max-height: 200px; /* 限制最大高度，避免过高 */
    border: none;
    outline: none;
    border-radius: 8px; /* 增加圆角，更现代 */

    margin-top: 2px;
    background-color: rgb(238, 238, 238); /* 保持原有背景色 */
    padding: 12px 15px; /* 优化内边距 */
    resize: none;

    /* 增大字体并优化行高 */
    font-size: 16px;
    line-height: 1.5;

    /* 添加添加过渡渡效果 */
    transition: all 0.3s ease;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.05); /* 内部轻微阴影，增加质感 */
}

/* 占位符样式优化 */
.main .right .message-input::placeholder {
    color: #a0a0a0;
    font-size: 16px;
    opacity: 0.8; /* 稍微降低不透明度 */
}

/* 聚焦状态优化 */
.main .right .message-input:focus {
    /* 保持原有背景色不变 */
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.1);
}

/* 滚动条美化（可选） */
.main .right .message-input::-webkit-scrollbar {
    width: 6px;
}

.main .right .message-input::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

.main .right .message-input::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 10px;
}

.main .right .message-input::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}


.main .right .ctrl {
    height: 35px;
    display: flex;
    justify-content: flex-end;
}

.main .right .ctrl button {
    height: 35px;
    width: 100px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 5px;
}

.main .right .ctrl button:active {
    background-color: grey;
    color: white;
}



/*
好添加模块
*/

/* 添加好友模块样式 */
.main .right .message-show .add-friend-module {
    margin: 15px 0; /* 增大上下间距，突出分隔线 */
    padding: 0; /* 移除所有内边距 */
    border-bottom: 1px solid #e0e0e0; /* 分隔线 */
}

/* 最后一条不显示分隔线 */
.main .right .message-show .add-friend-module:last-child {
    border-bottom: none;
    margin-bottom: 0; /* 最后一条底部不留间距 */
}

.main .right .message-show .add-friend-box {
    padding: 15px; /* 内容区域添加内边距 */
    background-color: #f8f9fa; /* 恢复背景色到内容区域 */
    border-radius: 8px; /* 圆角恢复到内容区域 */
}

/* 好友信息区域样式 */
.main .right .message-show .friend-info {
    margin-bottom: 10px; /* 添加底部间距 */
    padding: 10px;
    background-color: #e9ecef;
    border-radius: 6px;
    font-weight: 500;
}

.main .right .message-show .username {
    color: #333;
}


/*消息输入框*/
/*.main .right .message-show .form-group textarea {*/
/*    width: 100%;*/
/*    padding: 10px;*/
/*    border: 1px solid #e0e0e0;*/
/*    border-radius: 6px;*/
/*    box-sizing: border-box;*/
/*    font-size: 14px;*/
/*    resize: none;*/
/*}*/

/*.main .right .message-show .form-group textarea::placeholder {*/
/*    color: #a0a0a0;*/
/*}*/

/*新消息输入框*/
.main .right .message-show .form-group textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-sizing: border-box;
    font-size: 16px; /* 增大字体大小 */
    line-height: 1.5; /* 优化行高，提升可读性 */
    resize: none;
    min-height: 80px; /* 设置最小高度，方便输入多行文本 */
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.main .right .message-show .form-group textarea::placeholder {
    color: #a0a0a0;
    font-size: 16px; /* 保持占位符字体与输入文本一致 */
}

/* 增加聚焦效果，提升交互体验 */
.main .right .message-show .form-group textarea:focus {
    outline: none;
    border-color: #165DFF; /* 使用主题色 */
    box-shadow: 0 0 0 2px rgba(22, 93, 255, 0.1);
}





.main .right .message-show .send-btn {
    padding: 10px;
    background-color: #4285f4;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
}

.main .right .message-show .send-btn:active{
    background-color: grey;
}

/*.main .left .search button:active {*/
/*    background-color: grey;*/
/*}*/

.main .right .message-show .send-btn:disabled {
    background-color: #a0c4ff;
    cursor: not-allowed;
}





/* 好友申请列表样式 */
.main .left .list {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* 好友申请项 */
.main .left .list li.friend-request {
    height: 60px;
    padding: 10px 20px;
    color: white;
    border-top: 1px solid black;
    background-color: #333;

    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* 内容容器（固定240px×40px） */
.main .left .list .request-content {
    width: 240px;
    height: 40px;
    display: flex;
    align-items: center;
}

/* 申请信息区域 */
.main .left .list .request-info {
    width: 100%;
    padding: 0 5px; /* 减少内边距 */
}

/* 用户名（字体减小为13px，行高紧凑） */
.main .left .list .username {
    height: 30px;
    margin: 0;
    font-size: 14px;
    /*line-height: 1.2; !* 更紧凑的行高 *!*/
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 申请原因（字体减小为11px，行高紧凑） */
.main .left .list .reason {
    height: 30px;
    margin: 0;
    font-size: 12px; /* 更小的字体 */
    /*line-height: 1.2; !* 更紧凑的行高 *!*/
    color: #ccc;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* 操作按钮区域 */
.main .left .list .request-actions {
    display: flex;
    gap: 6px; /* 减小按钮间距 */
    flex-shrink: 0;
}

/* 同意按钮（尺寸减小） */
.main .left .list .accept-btn {
    padding: 3px 8px; /* 更小的按钮 */
    background-color: #4CAF50;
    color: white;
    border: none;
    border-radius: 3px;
    font-size: 11px; /* 更小的字体 */
    cursor: pointer;
}

/* 拒绝按钮（尺寸减小） */
.main .left .list .reject-btn {
    padding: 3px 8px; /* 更小的按钮 */
    background-color: #f44336;
    color: white;
    border: none;
    border-radius: 3px;
    font-size: 11px; /* 更小的字体 */
    cursor: pointer;
}








/* 聊天会话模块样式 */
.main .right .message-show .chat-session-module {
    margin: 20px 0;
    padding: 15px 0;
    border-bottom: 1px solid #e0e0e0;
}

/* 最后一个模块不显示分隔线 */
.main .right .message-show .chat-session-module:last-child {
    border-bottom: none;
}

.main .right .message-show .chat-session-box {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 15px;
}

/* 好友信息区域 */
.main .right .message-show .friend-info {
    padding: 10px;
    background-color: #e9ecef;
    border-radius: 6px;
    font-weight: 500;
}

.main .right .message-show .username {
    color: #333;
}

/* 进入聊天按钮 */
.main .right .message-show .chat-btn {
    padding: 10px;
    background-color: #4285f4;
    color: white;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.main .right .message-show .chat-btn:hover {
    background-color: #3367d6;
}